In some block based backup systems, files or other data objects are backed up by storing blocks associated with the data objects being backed up. Blocks and associated metadata are updated as needed and are retrieved in the event a file or other data object is restored. During restoration, blocks and other information (e.g., an inode number associated with files being restored and/or physical locations of blocks associated with those files) are retrieved from backup media or other memory. For example, for each file to be restored in some systems a file name is mapped to an inode number, the inode number is used to identify blocks comprising the file and the location at which each block is stored on backup media, the blocks comprising the file are read from the backup media, and the blocks read from backup media are used to restore the file to the destination machine. Throughout a restoration process, a variety of information is stored in memory by various processes or agents running on the components of a block based backup system. Reading and/or writing information to memory may contribute to the amount of time a restoration requires. Some block based systems take hours to perform a restore, for example when restoring a large directory containing a million or more files.
Reducing the amount of time to read/write to memory would be desirable, since this may reduce the overall amount of time required to perform a restoration.